This invention pertains generally to Bayesian networks, and more particularly to the acquisition of probabilistic knowledge pertaining to devices or systems being modeled from domain experts/knowledge engineers.
In scientific literature Bayesian networks are referred to by various names: Bayes nets, causal probabilistic networks, Bayesian belief networks or simply belief networks. Loosely defined Bayesian networks are a concise (acyclic) graphical structure for modeling probabilistic relationships among discrete random variables. Bayesian networks are used to efficiently model problem domains containing uncertainty in some manner and therein lies their utility. Since they can be easily modeled on a computer, they are the subject of increasing interest and use in automated decision-support systems, whether for medical diagnosis, automated automotive troubleshooting, economic or stock market forecasting or in other areas as mundane as predicting a computer user""s likely requirements.
In general, a Bayesian network consists of a set of nodes representing discrete-valued variables connected by arcs representing the causal dependencies between the nodes. A set of conditional probability tables, one for each node, defines the dependency between the nodes and its parents. And, nodes without parents, sometimes called source nodes, have associated therewith a prior marginal probability table. In diagnostic Bayesian networks for technical diagnosis the conditional probability tables for most nodes with parents are logical OR""s. For specific applications the data for the probability tables for all other nodes are provided by what is termed domain experts in whatever field is being modeled. This involves assigning prior probabilities for all nodes without parents, which in diagnostic Bayesian networks represent events causing malfunctions in the modeled device/system. In very large diagnostic Bayesian networks, most of the events are very rare with probabilities in the range of 0.001 to 0.000001. But, since a primary goal of a computer decision support system is to provide decisions as accurate as is possible, it is imperative that the domain experts provide probabilistic information that is highly reliable and their best estimate of the situation.
Diagnosis with Bayesian networks is fairly well understood [see for example, de Kleer, J. and Williams, B., xe2x80x9cDiagnosing multiple faultsxe2x80x9d in Artificial Intelligence, 32:97-130 (1987); or Heckerman, D., Breese, J., and Rommelse, K., xe2x80x9cDecision-theoretic Troubleshooting,xe2x80x9d in Communications of the ACM, 38:49-57 (1995)]. Having constructed a Bayesian network, it is possible by, e.g., using the methods of Heckerman et al., to construct a myopic troubleshooter that suggests optimal observations, repairs and configuration changes to obtain further information. The troubleshooter is termed myopic, because it only has a one-step lookahead. A typical application might be a LAN printer system which consists of several components: the application the computer user is printing from, the printer driver, the local area network connection, the server controlling the printer, the printer itself, etc. In general it is a complex task to troubleshoot such a system, and the computer printer industry spends significant sums of money on customer support. The majority of this expense is spent on labor, i.e., support agents that are sent out to repair printers that often are not broken, and solve problems that could have been handled by phone. Therefore, automating the troubleshooting process as much as possible would be highly beneficial to the printer industry and its customers.
When performing diagnosis in some particular problem area, it is almost always possible to represent the domain as a simple tree, if assuming a single fault only, such as depicted in FIG. 1 with the root problem node at the top level, problem categories at the next level, and then problems, causes, and subcauses, etc. Depending on the structure and size of the problem domain more or less levels are needed. If the single-fault assumption is made, and it is assumed that there are no common causes, the problem domain can be represented as a simple tree structure. The single-fault assumption is often a natural relationship as is discussed below. To model such a diagnostic tree in a computer with a diagnostic Bayesian network is very straightforward.
To develop a Bayesian network structure for the diagnosis of a system, such as a LAN printer system, requires conditional probabilities of the events causing the malfunctions of the modeled system. The required conditional probabilistic values must be directly elicited from domain experts in the field being modeled. In the example of a printer system, one would consult printer repair agents as the domain experts. There are inherently difficulties with eliciting expert probabilistic knowledge. For example, probability elicitations are often very difficult for domain experts due to the rarity of certain events being queried. This will often produce values of probability having a very low accuracy. This obviously is unacceptable since a diagnostic system based on probabilities of low accuracy will give suggestions of dubious value. Furthermore, as the elicitations increase in difficulty, more and more time will be spent on reaching an acceptable accuracy. This can be of great importance, as time consumption of knowledge acquisition is typically the bottleneck in projects involving the construction of very large diagnostic networks. A further problem even more subtle is the psychology of the situation. As the difficulty of these elicitations increases, the domain experts are less willing to cooperate in the process of knowledge acquisition and have less confidence in the knowledge they are providing. However, issues such as these are of high importance in projects involving a high amount of cooperation with domain experts.
One of the biggest stumbling blocks of the Bayesian network methodology is the requirement for large amounts of probability assessments. For example, a diagnostic Bayesian network for a printing system constructed according to generally accepted techniques requires prior probabilities for thousands of leaf variables. For any methodology of probability elicitation to be really useful, it must be fast and easy to assess these probabilities. Therefore, one of the main objects of this invention is to develop a method that makes it as easy as possible for domain experts to assess the probabilities, without increasing the number of assessments required and without jeopardizing the accuracy or the consistency of the probability assessments.
It is an object of this invention to have the domain experts answer easier questions than with previous approaches, allowing shorter answer-times and with higher accuracies of elicited probabilities. The invention details a method for implementing the acquired probabilities within a diagnostic Bayesian network.
In accordance with a preferred embodiment of the present invention a Bayesian network includes a set of nodes representing discrete-valued variables. A plurality of arcs connect nodes from the set of nodes. The arcs represent the causal dependencies between the nodes. A prior marginal probability value is associated with each leaf node (nodes without parents). The prior marginal probability values of the leaf nodes are calculated by first estimating conditional probabilities for all their descendent nodes. For example, for each node A with parent nodes, knowledge acquisition questions are developed which when answered will indicate one conditional probability for each parent node given A. The questions and answers assume a single occurrence of a fault (i.e., a single-fault assumption). That is, it is assumed that one and only one variable among the plurality of parent nodes will be in its positive state, i.e., a present fault. Thus a sum of the conditional probabilities of the parent nodes being in the positive states will always be equal to one. In order to obtain a prior marginal probability for each leaf node, a conditional probability of the leaf node is multiplied with conditional probabilities for each node which is a descendent of the leaf node.
In the preferred embodiment of the present invention, constraint variables are associated with the set of nodes. The constraint variables enforce the single-fault assumption between the causes represented by the nodes.
For example, when the Bayesian network is used for troubleshooting a product, such as a printer, a root node can represent a problem and parent nodes of the root node can represent causes of the problem. A cause can have parent nodes that are subcauses. When performing knowledge acquisition for the Bayesian network, it is assumed that there is a problem. For each potential cause of the problem, the conditional probability the problem was caused by the potential cause of the problem is estimated, given that the problem is present. For each potential cause that has subcauses, the conditional probability that a subcause underlies the potential cause is estimated, given that the problem is caused by the potential cause. And so on, until all leaf nodes for the Bayesian network have been reached.
In the preferred embodiment, a prior marginal probability of each leaf node is calculated by multiplying conditional probability of all nodes which descend from the leaf node.
The present invention involves knowledge acquisition questions that are easier to answer by the experts due to the larger amount of conditional information. This allows the domain experts to assess probabilities to a higher degree of accuracy than with the previous methods.
Further, the present invention also allows the domain experts to spend less time assessing the probabilities in an attempt to reach acceptable accuracy.